#### buffer (22 of 42 overloads)

Create a new non-modifiable buffer that represents the given POD vector.

    template<
        typename PodType,
        typename Allocator>
    const_buffer buffer(
        const std::vector< PodType, Allocator > & data,
        std::size_t max_size_in_bytes);

###### Return Value

A `const_buffer` value equivalent to:

    const_buffer(
       data.size() ? &data[0] : 0,
       min(data.size() * sizeof(PodType), max_size_in_bytes));

###### Remarks

The buffer is invalidated by any vector operation that would also invalidate iterators.